if __name__ == "__main__":
    class People:
        #类的基本属性
        name = ""
        age = 0
        #定义类的私有属性
        __weight = 0

        #定义构造方法
        def __init__(self,name,age,weight):
            self.name = name
            self.age = age
            self.__weight = weight

        def speak(self):
            print("%s 说:我%d岁,体重是%d"%(self.name,self.age,self.__weight))

    #单继承例子
    class Student(People):
        grade = ''
        def __init__(self,name,age,weight,grade):
            #调用父类的构造函数
            People.__init__(self,name,age,weight)
            self.grade = grade
        #重写父类的方法
        def speak(self):
            print("%s 说:我%d岁了,我在读%d年级"%(self.name,self.age,self.grade))
    s = Student('Tim',10,30,3)
    s.speak()


#方法重写
    class Parent:  # 定义父类
        def myMethod(self):
            print('调用父类方法')


    class Child(Parent):  # 定义子类
        def myMethod(self):
            print('调用子类方法')


    c = Child()  # 子类实例
    c.myMethod()  # 子类调用重写方法
    super(Child, c).myMethod()  # 用子类对象调用父类已被覆盖的方法